package com.newgrand.service;

import com.newgrand.domain.model.I8ReturnModel;
import com.newgrand.domain.model.MonthlyValuations;
import org.springframework.scheduling.annotation.Async;

import java.util.List;

/**
 * @创建人：ZhaoFengjie
 * @修改人：ZhaoFengjie
 * @创建时间：17:29 2022/10/17
 * @修改时间:：17:29 2022/10/17
 */
public interface MonthlyValuationsService {

    I8ReturnModel save(MonthlyValuations.MonthlyValuationsData.MonthlyValuationsMain data, String orgId);

    I8ReturnModel saveLW(MonthlyValuations.MonthlyValuationsData.MonthlyValuationsMain data, String orgId);

    void saveBatch(List<MonthlyValuations.MonthlyValuationsData.MonthlyValuationsMain> data, String orgId);

    List<MonthlyValuations.MonthlyValuationsData.MonthlyValuationsMain> getData(String orgId, String subcontractId);

    I8ReturnModel getDataByOrgId(String orgId, String subcontractId);

    @Async("asyncServiceExecutor")
    I8ReturnModel saveDataByOrgId(String orgId, String subcontractId);

    I8ReturnModel saveDataByOrgIdAll(String orgId);
}
